Scroll to navigation

AMANDA-CHANGERS(7) Miscellanea AMANDA-CHANGERS(7)

NAME

amanda-changers - Configuring and Using Amanda Changers

DESCRIPTION

Amanda uses changers to arbitrate access to devices (amanda-devices(7)) and data volumes. Changers provide an abstraction of tape robots, but are used to manage non-tape media, too. Amanda communicates with changers through the Changer API. This manpage contains a user-level overview of the API, and does not address details that are only of concern to developers. For that purpose, consult the Amanda source code and http://wiki.zmanda.com.

TRANSITION

The Amanda Changer API is in transition from version 1.0 - driven by shell scripts invoked for each changer operation - to version 2.0, composed of perl objects that can manage parallel access to multiple devices and other complexity. When this transition is complete, Amanda devices will, in general, be specified via a changer, which will provide the necessary device specifier to access a requested volume. In the interim, support for the "new" changer syntax is limited to the experimental amvault(8).

SPECIFYING CHANGERS

Changer specifications are strings like chg-disk:/my/vtapes. The chg- prefix serves to differentiate changers from devices (see amanda-devices(7)). The next portion (disk, in this case) identifies the particular changer driver to use, and everything that follows the : is interpreted by the driver.

A name which does not match this pattern, but which matches an old changer script (e.g., chg-zd-mtx), invokes the backward-compatibility changer driver as chg-compat:chg-zd-mtx. If the name does not match an old changer, then it is treated as an Amanda device, and is wrapped by the single-device changer, e.g., chg-single:tape:/dev/rmt/0.

Changers which require additional parameters can also be described in amanda.conf(5) with "changer" sections, for example,

define changer hp-robot {

tapedev "chg-robot:/dev/sg1"
property "drives" "0=/dev/nst0;1=/dev/nst0"
property "slots" "1-10" }
(note that "chg-robot" is not yet implemented, so this is hypothetical). A changer defininition creates a changer "alias", in this case named hp-robot, which can then be named where an application expects a changer - for example, the target of the amvault command.

CHANGER DRIVERS

This section lists the changer drivers included with Amanda, and basic instructions for using them. For complete How-To information, consult the Amanda wiki at http://wiki.zmanda.com.

chg-disk (new)

tpchanger "chg-disk:/u01/vtapes"

This changer driver replaces the old chg-disk, supporting parallel access to vtapes stored in directories named slotN in the directory specified after chg-disk:. It does so by creating numbered "drives" so that simultaneous processes can access distinct slots.

chg-disk (old)

tapedev "file:/u01/vtapes"
tpchanger "chg-disk"

This changer script supports sequential access to vtapes stored in directories named slotN in the directory specified by the tapedev parameter.

chg-multi

tpchanger "chg-multi"
changerfile "chg-multi-state"

This script simply round-robins a number of distinct device names, as specified in its configuration file. It is useful when all volumes for a configuration have different device names -- for example, with S3 devices. The changerfile need not exist; it is used as a prefix for filenames of state files.

chg-manual

tpchanger "chg-manual"
changerfile "chg-manual.conf"

This script simply provides distinct device names in a round-robin fashion, as specified in its configuration file. It is useful when all volumes for a configuration have different device names -- for example, with S3 devices. The configuration file parameters are (as listed in the script):

resend_mail=900       # resend mail every __ seconds
timeout_mail=604800   # time out after this many seconds (default 7 days)
request="[type]"      # How to request a new tape (default "tty_email")

request="tty" # Use the tty to ask the user to change tape.
# Can´t be use by cron
request="email" # Send an email to ask the user to change tape.
request="tty_email" # Use the tty if it exist or send an email.

chg-zd-mtx

tpchanger "chg-zd-mtx"
changerdev "/dev/sg0"         # used with ´mtx -f´
changerfile "chg-zd-mtx.conf"
tapedev "tape:/dev/nst0"

This script interfaces with a tape drive using the Zubkoff/Dandelion version of mtx. That´s the version that takes a device specifier with the -f option and has subcommands like status. The configuration file parameters are (as listed in the script itself):

firstslot=?                 #### First storage slot (element)
lastslot=?                  #### Last storage slot (element)
cleanslot=-1                #### Slot with cleaner tape -- default is "-1"

#### Set negative to indicate no cleaner available driveslot=0 #### Drive slot number. Defaults to 0
#### Use the ´Data Transfer Element´ you want autoclean=0 #### Set to ´1´ or greater to enable autocleancount=99 #### Number of access before a clean. havereader=0 #### If you have a barcode reader, set to 1. offline_before_unload=0 #### Does your robot require an
#### ´mt offline´ before mtx unload? poll_drive_ready=NN #### Time (seconds) between tests to see if
#### the tape drive has gone ready (default: 3). max_drive_wait=NN #### Maximum time (seconds) to wait for the
#### tape drive to become ready (default: 120). initial_poll_delay=NN #### initial delay after load before polling for
#### readiness slotinfofile=FILENAME #### record slot information to this file, in
#### the line-based format "SLOT LABEL\n"

chg-rait

tpchanger "chg-rait"
changerfile "chg-rait.conf"

This changer script constructs RAIT devices out of the devices provided by several "sub-changers". The configuration file specifies nchangers, the number of subchangers, and then provides tpchanger, changerdev_N, changerfile_N, and tpchanger_N for each sub-changer, 1 through N.

chg-null

tpchanger "chg-null"

This changer always provides the device "null:". It is sometimes useful in conjunction with chg-rait.

Unmaintained Changers

Amanda has many other changer scripts and programs beyond those described here (see the changer-src/ in the source directory), but most of these scripts are unmaintained and undocumented, and will be removed when the new changer API is fully implemented.

SEE ALSO

amanda(8), amanda.conf(5), amanda-devices(7),

AUTHOR

Dustin J. Mitchell <dustin@zmanda.com>

Zmanda, Inc. (http://www.zmanda.com)
11/05/2009 Amanda 2.6.1p2